// Kony

#pragma once

#include "CoreMinimal.h"
#include "Checkpoint/Checkpoint.h"
#include "MapEntrance.generated.h"

/**
 * 地图入口类 - 继承自检查点类
 */
UCLASS()
class GASC_HUANLING_API AMapEntrance : public ACheckpoint
{
	GENERATED_BODY()
	
public:
	/* 保存接口 Save Interface */
	//从存档中加载 Actor 状态
	virtual void LoadActor_Implementation() override;
	/* 保存接口 end Save Interface */
	//传送到的目标地图
	UPROPERTY(EditAnywhere)
	TSoftObjectPtr<UWorld> DestinationMap;
	//目标地图的玩家起始标签
	UPROPERTY(EditAnywhere)
	FName DestinationPlayerStartTag;
protected:
	/** Target Interface 目标接口 */
	virtual void HighlightActor_Implementation() override; //重写接口抽象类 设置高亮
	/** end Target Interface */
	//处理碰撞函数 重写方法不能携带 UFUNCTION()
	virtual void OnSphereOverlap(UPrimitiveComponent* OverlappedComponent,AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult);

private:
	
};
